Current discrete graphics cards generally include several processing cores to calculate vertex, geometry, and pixel data. Generally several cores are grouped as a multi-core (m-core) and each m-core is usually paired with a texture unit. The texture units are coupled to one or more memory controllers that provide an interface to the video memory on the card. Many of these components of a discrete graphics card may be present in integrated graphics solutions as well. Integrated graphics solutions may be integrated with a chipset or with a central processing unit. Graphics cards may partition image data, including pixels, vertices, and geometry data) into fixed sized blocks. These blocks of image data are then distributed among the several graphics processing m-cores and texture units. Furthermore, many processing m-cores, texture units, and memory controllers include several performance counters to allow performance calculations to be made to determine the efficiency of these devices.